|
The Direct Rendering Infrastructure (DRI) is a framework for allowing direct access to graphics hardware under the X Window System in a safe, efficient way.〔(【引用サイトリンク】url=http://dri.freedesktop.org/wiki/ )〕 The main use of DRI is to provide hardware acceleration for the Mesa implementation of OpenGL. DRI has also been adapted to provide OpenGL acceleration on a framebuffer console without a display server running. DRI implementation is scattered through the X Server and its associated client libraries, Mesa 3D and the Direct Rendering Manager kernel subsystem. All of its source code is free software. == Software architecture == Direct Rendering Infrastructure is intended to facilitate the acceleration of 3D rendering and General-purpose computing on graphics processing units on available hardware by the operating system. The DRI is split into three parts: * the Direct Rendering Manager (DRM), a kernel component, for command checking and queuing (not scheduling); the DRM is a combination of at least two kernel modules, one of core DRM code and others providing APIs to userland to access different classes of video hardware. * * KMS driver, the device driver for the display controller * * Graphics Execution Manager (GEM) or gemified Translation Table Maps (TTM), a kernel component, that despite its name, it does not execute anything but is responsible for the memory management of the graphics memory; * the Mesa 3D device drivers, a userspace component, that does the translation of OpenGL commands into hardware specific commands; it prepares buffers of commands to be sent to the hardware by the DRM and interacts with the windowing system for synchronization of access to the hardware The hardware specific library libdrm implements the userspace interface to the kernel DRM. Libdrm contains a full set of functions to obtain information about encoders, connectors (such as DAC, TMDS, LVDS, etc.) and CRTC, such as their current state, their combinations, connector properties and available modes. Additional code provides access to the API provided by the driver module. In X this is the libdri.so support module and a DRI-enabled DDX (2D driver). In the framebuffer implementation this is MiniGLX, which initializes the DRM and provides some X APIs to the userspace driver despite the lack of a display server. There is also a project using the Linux kernel DRI to gain direct access to the hardware for the purpose of using it as General-purpose computing on graphics processing units. * https://github.com/migle/gpgpu-dri * Fastra II 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Direct Rendering Infrastructure」の詳細全文を読む スポンサード リンク
|